package com.stu.day12;

/**
 * 泛型类,泛型方法
 * @author zy
 * @date 2025/2/10 11:26
 */
public class GenericDemo {
    public static void main(String[] args) {
        GenericClass<Integer> gc = new GenericClass<Integer>();
        gc.fun(10);

        GenericClass<Long> gc2 = new GenericClass<Long>();
        gc2.fun(20L);  // int类型不能直接转换成Long对象,long类型才可以

        GenericMethod.fun2("ab");
    }
}
class GenericClass<T>{
    public void fun(T t){
        System.out.println(t);
    }

    // 泛型类中不能有含泛型的静态方法,要用泛型方法定义静态泛型方法
    public static <T> int fun2(T t){
        return 1;
    }
}
class GenericMethod {
    public <T> T fun(T t){
        return t;
    }

    public static <T> void fun2(T t){  // 泛型静态方法
        System.out.println(t);
    }
}
